//package com.gyao.ddl;
//import com.baomidou.mybatisplus.annotation.DbType;
//import com.baomidou.mybatisplus.annotation.IdType;
//import com.baomidou.mybatisplus.generator.AutoGenerator;
//import com.baomidou.mybatisplus.generator.config.*;
//import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
//public class MyBatisPlusGenerator {
//
//    public static void main(String[] args) {
//       // startGenerator();
//    }
//
//    private static void startGenerator() {
//        String basePackage = "com.gyao.orm.mybatis";
//        String mysql_url = "jdbc:mysql://127.0.0.1:3308/dev?useUnicode=true&autoReconnect=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8";
//        //1. 全局配置
//        GlobalConfig config = new GlobalConfig();
//        String path = System.getProperty("user.dir") + "\\orm\\src\\main\\java";
//
//        config.setActiveRecord(true) // 是否支持AR模式
//                .setAuthor("liuqin") // 作者
//                .setOutputDir(path) // 生成路径
//                .setFileOverride(true)  // 文件覆盖
//                .setIdType(IdType.AUTO) // 主键策略
//                .setServiceName("%sService")  // 设置生成的service接口的名字的首字母是否为I
//                .setBaseResultMap(true)//生成基本的resultMap
//                .setBaseColumnList(true);//生成基本的SQL片段
//
//        //2. 数据源配置
//        DataSourceConfig dsConfig = new DataSourceConfig();
//        dsConfig.setDbType(DbType.MYSQL)  // 设置数据库类型
//                .setDriverName("com.mysql.cj.jdbc.Driver")
//                .setUrl(mysql_url)
//                .setUsername("root")
//                .setPassword("a123456");
//
//        //3. 策略配置globalConfiguration中
//        StrategyConfig stConfig = new StrategyConfig();
//        stConfig.setCapitalMode(true) //全局大写命名
//                .setEntityLombokModel(true)
//                .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略
//                //.setTablePrefix("tbl_")
//                .setInclude("user");  // 生成的表
//
//        //4. 包名策略配置
//        PackageConfig pkConfig = new PackageConfig();
//        pkConfig.setParent(basePackage)
//                .setMapper("mapper")//dao
//                .setService("service")//servcie
////                .setController("controller")//controller
//                .setEntity("entity")
//                .setXml("mapper");//mapper.xml
//
//
//        TemplateConfig templateConfig = new TemplateConfig();
//        //控制 不生成 controller
//        templateConfig.setController("");
//
//        //5. 整合配置
//        AutoGenerator ag = new AutoGenerator();
//        ag.setGlobalConfig(config)
//                .setDataSource(dsConfig)
//                .setStrategy(stConfig)
//                .setPackageInfo(pkConfig).setTemplate(templateConfig);
//        //6. 执行
//        ag.execute();
//    }
//
//}
